<template>
  <div>

    <!-- 阿里云视频播放器样式 -->
    <link rel="stylesheet" href="https://g.alicdn.com/de/prismplayer/2.8.2/skins/default/aliplayer-min.css" >
    <!-- 启用私有加密的防调式：生产环境使用 -->
    <script src="https://g.alicdn.com/de/prismplayer/2.8.0/hls/aliplayer-vod-anti-min.js" />
    <!-- 阿里云视频播放器脚本 -->
    <script charset="utf-8" type="text/javascript" src="https://g.alicdn.com/de/prismplayer/2.8.2/aliplayer-min.js" />
    <!-- 阿里云视频播放器组件 -->
    <script charset="utf-8" src="https://player.alicdn.com/aliplayer/presentation/js/aliplayercomponents.min.js"/>
    <!-- 定义播放器dom -->
    <div id="J_prismPlayer" class="prism-player"/>

  </div>
</template>

<script>
import courseApi from '~/api/course'

export default {
  async asyncData(page) {
    const vid = page.route.params.vid
    const response = await courseApi.getPlayAuth(vid)
    return {
      vid: vid,
      playAuth: response.data.playAuth
    }
  },

  /**
   * 页面渲染完成时：此时js脚本已加载，Aliplayer已定义，可以使用
   */
  mounted() {
    var danmukuList = [{
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 2000,
      'size': 25,
      'color': 0xff0000
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 30000,
      'size': 25,
      'color': 0xff0000
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 4000,
      'size': 25,
      'color': 0x00c1de
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 5000,
      'size': 25,
      'color': 0x00c1de
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 10000,
      'size': 25,
      'color': 0x00c1de
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }, {
      'mode': 1,
      'text': 'test',
      'stime': 1000,
      'size': 25,
      'color': 0xffffff
    }]
    /* eslint-disable no-undef */ // 忽略 no-undef 检测
    new Aliplayer({
      id: 'J_prismPlayer',
      width: '100%',
      // 播放配置
      // 播放方式一:非加密（视频播放地址）
      // source: this.playInfo,

      // 播放方式二：加密视频的播放：首先获取播放凭证
      encryptType: '1', // 如果播放加密视频，则需设置encryptType=1，非加密视频无需设置此项
      vid: this.vid,
      playauth: this.playAuth,
      components: [{
        name: 'BulletScreenComponent', // 跑马灯组件
        type: AliPlayerComponent.BulletScreenComponent,
        /** 跑马灯组件三个参数 text, style, bulletPosition
             * text: 跑马灯文字内容
             * style: 跑马灯样式
             * bulletPosition: 跑马灯位置, 可选的值为 'top' (顶部), 'bottom' (底部), 'random' (随机), 不传值默认为 'random'
             */
        args: ['欢迎康师傅来到谷粒电影学院', { fontSize: '16px', color: '#00FF00' }, 'random']
      }, {
        name: 'AliplayerDanmuComponent', // 弹幕组件
        type: AliPlayerComponent.AliplayerDanmuComponent,
        args: [danmukuList] // 列表：注意需要外层的[ ]
      }, {
        name: 'RotateMirrorComponent',
        type: AliPlayerComponent.RotateMirrorComponent
      }]
    }, function(player) {
      console.log('播放器创建成功')
    })
  }
}
</script>
